// app.js
// let livePlayer = requirePlugin('live-player-plugin')
App({
  onLaunch() {
    // 展示本地存储能力
    wx.getSystemInfo({
      success: e => {
        let capsule = wx.getMenuButtonBoundingClientRect();
        this.globalData.MenuButtonTop = capsule.top;
        this.globalData.MenuButtonHeight = capsule.height;
        if (capsule) {
          this.globalData.CustomBar = e.statusBarHeight + capsule.height + (capsule.top - e.statusBarHeight)*2;
        } else {
          this.globalData.CustomBar = e.statusBarHeight + 50;
        }
      }
    })
    var that = this
    wx.checkSession({
      success() {
        //session_key 未过期，并且在本生命周期一直有效
        console.log("登录未过期")
        //同步数据
        that.syncData();
      },
      fail() {
        // session_key 已经失效，需要重新执行登录流程
        console.log("登录已过期")
        wx.setStorageSync(that.globalData.LOGINSTATUS, false)
        wx.setStorageSync(that.globalData.PHONENUMBER, '')
        wx.setStorageSync(that.globalData.PERSON_ID, 0)
        wx.setStorageSync(that.globalData.NiCheng, '')
        wx.setStorageSync(that.globalData.TouXiang, '')
      }
    })
    // wx.loadFontFace({
    //   family: 'Ali',
    //   global: true,
    //   source: 'url("https://insurancecard.oneplusyang.com/2023060910440628105446a90b45e9bf40c24e7b76dc0d.ttf")',
    //   success(res) {
    //     console.log("引入样式成功")
    //   },
    //   fail: function(res) {
    //     console.log("引入样式失败")
    //   },
    //   complete: function(res) {

    //   }
    // });
    const logs = wx.getStorageSync('logs') || []
    if (wx.canIUse('getUpdateManager')) {
      //获取全局唯一的版本更新管理器，用于管理小程序更新
      const updateManager = wx.getUpdateManager()
      //监听向微信后台请求检查更新结果
      updateManager.onCheckForUpdate(function (res) {
        // console.log("是否有新版本：" + res.hasUpdate);
        if (res.hasUpdate) {
          //监听小程序有版本更新
          updateManager.onUpdateReady(function () {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经更新，是否重启小程序？',
              success: function (res) {
                if (res.confirm) {
                  //强制小程序重启并使用新版本
                  updateManager.applyUpdate()
                }
              }
            })
          })
          //监听小程序更新失败
          updateManager.onUpdateFailed(function () {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经上线，请您删除当前小程序，重新搜索小程序打开'
            })
          })
        }
      })
    } else {
      wx.showModal({
        title: '更新提示',
        content: '当前微信版本过低，无法使用新版本，请升级到最新微信版本后重试'
      })
    }
  },

  onShow(options) {
    const sceneList = [1007, 1008, 1014, 1044, 1045, 1046, 1047, 1048, 1049, 1073, 1154, 1155]
    if (sceneList.includes(options.scene)) {
      // livePlayer.getShareParams()
      //   .then(res => {
      //     wx.setStorageSync(this.globalData.SHOPID, res.custom_params.dianPuId)
      //     wx.setStorageSync(this.globalData.TJR_ID, res.custom_params.tjr_id)
      //     wx.setStorageSync(this.globalData.LOGINSTATUS, false)

      //   }).catch(err => {
      //     console.log('get share params', err)
      //   })
    }
    // // 检查用户登录状态，并决定是否开启socket
    // this.checkLoginUserSocket();
    // //判断是否登录 连接socket
    // this.globalData.socketClientTimer = setInterval(() => {
    //   // 定时器---检查用户登录状态，并决定是否开启socket
    //   this.checkLoginUserSocket();
    // }, 30000)
  },

  // // 小程序进入后台
  // onHide() {
  //   // 关闭全局socket状态连接定时器
  //   clearInterval(this.globalData.socketClientTimer)
  //   // 关闭socket
  //   this.closeSocketFunction()
  // },

  // // 检查用户登录状态，并决定是否开启socket
  // checkLoginUserSocket() {
  //   this.globalData.supplierId = wx.getStorageSync('supplierId') || null;
  //   console.log("this.globalData.supplierId:"+this.globalData.supplierId)
  //   if (this.globalData.supplierId) {
  //     //登录状态下调用连接socket 且判断是否已经连接socket 
  //     if (!this.globalData.isSocketConnect) {
  //       // console.log("-----用户一登录---连接socket")
  //       this.connectSocketFunciton()
  //     }
  //   } else {
  //     // console.log("-----用户未登录--关闭socket")
  //     //未登录状态下清除定时器关闭socket
  //     this.closeSocketFunction()
  //   }
  // },
  // //小程序连接socket
  // connectSocketFunciton() {
  //   var that = this
  //   var socketUrl = `wss://192。168.1.33/wss/websocket/${that.globalData.supplierId}`
  //   wx.connectSocket({
  //     url: socketUrl,
  //     success: (res => {
  //       // 标识socket已连接
  //       that.globalData.isSocketConnect = true
  //       // 初始化连接监听
  //       that.initEventHandler()
  //     }),
  //     fail: (fail => {})
  //   })
  // },
  // // 绑定监听
  // initEventHandler() {
  //   var that = this
  //   // socket连接开启
  //   wx.onSocketOpen((result) => {
  //     // 开启心跳
  //     that.startHeart()
  //   })
  //   // socket连接关闭
  //   wx.onSocketClose((res) => {
  //     if (that.globalData.isSocketConnect) {
  //       that.connectSocketFunciton()
  //     }
  //   })
  //   // 接收socket消息
  //   wx.onSocketMessage((res) => {
  //     console.log("onSocketMessage", res)
  //     //第一次消息如果为init就绑定uid
  //     // var data = JSON.parse(res.data)
  //     //这里data可以根据后端返回的数据做一些处理 根据自己的需求做出对应的处理
  //     // 全局socket接收消息的方法回调
  //     that.globalData.callback(res)
  //   })
  // },
  // //发送心跳
  // startHeart() {
  //   if (this.globalData.isSocketConnect) {
  //     this.globalData.socketHeartTimer = setInterval(() => {
  //       wx.sendSocketMessage({
  //         data: 'heartBath',
  //         success: function (res) {},
  //         fail: function (res) {}
  //       })
  //     }, 45 * 1000)
  //   } else {
  //     clearTimeout(this.globalData.socketHeartTimer)
  //   }
  // },
  // //此页面关闭socket和定时器的函数
  // closeSocketFunction: function () {
  //   if (this.globalData.isSocketConnect) {
  //     // 标识socket已断开
  //     this.globalData.isSocketConnect = false
  //     // 关闭socket连接
  //     wx.closeSocket()
  //     // 关闭socket心跳定时器
  //     clearInterval(this.globalData.socketHeartTimer)
  //   }
  // },

  //同步机器人健康档案数据
  syncData(){
    var that = this
    var token=wx.getStorageSync(that.globalData.TOKEN)
    if(token!=''){
      wx.request({
        url: that.globalData.base_url + 'qiTa/tongBuJiuZhenRenAndGouMaiChanPin',
        header: {
          'token':token,  
        },
        success: function (res) {
          console.log("同步数据成功" )
        },
        fail: function (err) {
          console.log("同步数据失败" )
        },
        complete: function (res) {
          // console.log("同步数据完成" )
        }
      })
    }else{
      console.log("未执行同步数据" )
    }
  },

  globalData: {
    version: '1.0.3',
    VerIndex:'verIndex',
    appId: 'wx857a5c48336380cc', //小康商城
    MenuButtonTop: 50,//胶囊距离顶部
    MenuButtonHeight: 30,//胶囊的高度
    CustomBar: 60,//整个状态栏高度
    SHOPID: 'shopId', //店铺ID
    ShopName: 'shopName', //店铺名称
    ShopLogo: 'shopLogo', //店铺LOGO
    JKQName:'jkqname',//健康圈名称
    shopIsChange: false, //店铺是否切换
    proIsChange: false, //产品是否切换
    // gwcList:[],//未登录购物车list
    TOKEN: 'token', //token
    OPENID: 'openId', //我的openid
    LOGINSTATUS: 'login_status', //登录状态
    PERSON_ID: 'personId', //我的系统ID
    TJR_ID: 'tjr_id', //推荐人ID
    PHONENUMBER: 'phonenumber', //我的手机号码
    NiCheng: 'niCheng',
    TouXiang: 'touxiang',
    CHAKANDISBLE: 'chakandisble',
    USERNAME: 'userName', //联系人
    PROVINCENAME: 'provinceName', //省
    CITYNAME: 'cityName',
    COUNTYNAME: 'countyName', //区
    DETAILINFO: 'detailInfo', //详细地址
    TELNUMBER: 'telNumber', //联系电话
    NATIONALCODE: 'nationalCode',
    POSTALCODE: 'postalCode',
    CityCode:'CityCode',
    CityName:'CityName',

    base_url: 'https://h5.oneplusyang.com/', //正式环境业务
    // base_url: 'http://xksch5test.51yjy.cn/', //测试环境业务
    // base_url: 'http://k3n3211190.51vip.biz/', //测试环境业务
    // base_url: 'https://j303211190.eicp.vip/', //测试环境业务
    
    base_qiniu_url: 'https://zsdlqn.zijiapuzi.com/',
    base_yjy_url:'https://ryrobot.fromfuture.cn/',//医加医正式环境
    // base_yjy_url:'https://ryrobottest.fromfuture.cn/',//医加医测试环境
    // supplierId: null,
    // socketUrl: null, // socketUrl
    // timeout: 10000, // 延迟
    // socketHeartTimer: null,
    // callback: function () {}, // socket连接回调函数
    // socketClientTimer: null, // socket连接定时器
    // isSocketConnect: false, // 当前socket是否连接
  }
})